/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.clicarros.controle.solicitacaoveiculo;

import br.com.clicarros.dominio.cliente.Cliente;
import br.com.clicarros.dominio.cliente.Endereco;
import br.com.clicarros.dominio.solicitacaoveiculo.SolicitacaoVeiculo;
import br.com.clicarros.dominio.veiculo.Categoria;
import br.com.clicarros.dominio.veiculo.Marca;
import br.com.clicarros.dominio.veiculo.Veiculo;
import br.com.clicarros.fachada.IFachada;
import br.com.clicarros.fachada.implementacao.Fachada;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * @author Bruno
 */

@WebServlet(name = "ControleSolicitacaoVeiculo", urlPatterns = {"/ControleSolicitacaoVeiculo"})
public class ControleSolicitacaoVeiculo extends HttpServlet {
    
    private IFachada fachada = new Fachada();
  
    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
               
        if(request.getParameter("listar") != null){
                    
           request.setAttribute("solicitacoes", fachada.listarTodos(new SolicitacaoVeiculo()));
           
           request.getRequestDispatcher("Administrador/veiculo/solicitacao/solicitacoes.jsp").forward(request,response);
          
        }// end if listar
                
        else if(request.getParameter("cadastrar") != null){
            
        Cliente c = new Cliente();
       
        c.setNome(request.getParameter("nome"));
        c.setSobrenome(request.getParameter("sobrenome"));
        c.setTelefone(request.getParameter("telefone"));
        c.setEmail(request.getParameter("email"));
        c.setCelular("não informado");
        c.setCpf("não informado");
        c.setRg("não informado");
        
        Endereco end = new Endereco();
        
        c.setEndereco(end);
        
        SolicitacaoVeiculo sv = new SolicitacaoVeiculo();
               
        sv.setAnominimo(Integer.parseInt(request.getParameter("anominimo")));
        sv.setAnomaximo(Integer.parseInt(request.getParameter("anomaximo")));
        
        String valorminimo = request.getParameter("valorminimo"); 
        valorminimo = valorminimo.replace(".","");
        sv.setValorminimo(Double.parseDouble(valorminimo.replace(",","."))); 
                
        String valormaximo = request.getParameter("valormaximo");
        valormaximo = valormaximo.replace(".","");
        sv.setValormaximo(Double.parseDouble(valormaximo.replace(",", ".")));
        
        sv.setCombustivel(request.getParameter("combustivel"));
        sv.setCor(request.getParameter("cor"));
        sv.setNumeroportas(Integer.parseInt(request.getParameter("numeroportas")));
       
               
         Veiculo v = new Veiculo();

         v.setIdVeiculo(Integer.parseInt(request.getParameter("veiculo")));
        
         sv.setVeiculo(v);
         
                
         fachada.inserir(c);
       
        sv.setCliente(c);
      
        fachada.inserir(sv);
          
          request.setAttribute("solicitacoes", fachada.listarTodos(new SolicitacaoVeiculo()));
          request.setAttribute("mensagem", "<div id=mensagem>Solicitação de Veículo cadastrada!!!</div>");
          request.getRequestDispatcher("Administrador/veiculo/solicitacao/solicitacoes.jsp").forward(request,response);
       
     } else if (request.getParameter("cadastrosolicitacaoveiculo") != null){
                          
            request.setAttribute("marcas", fachada.listarTodos(new Marca()));
            request.setAttribute("categorias", fachada.listarTodos(new Categoria()));
            request.setAttribute("veiculos", fachada.listarTodos(new Veiculo()));
            request.getRequestDispatcher("Administrador/veiculo/solicitacao/CadastroSolicitacaoVeiculo.jsp").forward(request,response);
         
   } //end cadastro solicitacao veiculo
     
     else if (request.getParameter("excluir") != null) {
       
        String[] ids = request.getParameterValues("id");
        
               
            for(String id : ids) {
                
                SolicitacaoVeiculo v = new SolicitacaoVeiculo();
                
                v.setIdsolicitacaoveiculo(Integer.parseInt(id));
                fachada.excluir(v);   
                
             }// end for
            
          request.setAttribute("solicitacoes", fachada.listarTodos(new SolicitacaoVeiculo()));
          request.setAttribute("mensagem", "<div id=mensagem>Solicitações excluídas!</div>");
          request.getRequestDispatcher("Administrador/veiculo/solicitacao/solicitacoes.jsp").forward(request,response);
            
                           
   }// end if excluir
       
 }
}
  